Skip to content

Add VU NWB protocol support and extraction example - #21

Merged
ilkilic merged 14 commits into
masterfrom
feature/vu-protocol-ecode-mapping
Jul 3, 2026
Merged

Add VU NWB protocol support and extraction example#21
ilkilic merged 14 commits into
masterfrom
feature/vu-protocol-ecode-mapping

Conversation

@ilkilic

@ilkilic ilkilic commented Jun 26, 2026

Copy link
Copy Markdown
Collaborator

Implements https://github.com/openbraininstitute/prod-human-data-and-models/issues/39.

Description

This PR adds support for additional VU NWB protocols and documents the NWB extraction workflow.

Changes

  • Map additional VU NWB stimulus descriptions to BluePyEfe protocol names.
  • Add VUPinkNoise and VUCapCheck eCode implementations and register them.
  • Skip empty VU traces before post-processing to avoid failures on empty current/voltage data.
  • Add tests for VU protocol mappings, empty-trace handling, and VU eCode registration/instantiation.
  • Add an NWB extraction example notebook

ilkilic added 4 commits June 5, 2026 10:38
Add VU pink-noise and cap-check eCodes, map their NWB stimulus descriptions, and skip empty VU traces before post-processing.
Document the NWB inspection and extraction workflow in a clean example notebook.
@ilkilic ilkilic self-assigned this Jun 26, 2026
Comment thread bluepyefe/ecode/capCheck.py Outdated
Comment thread bluepyefe/ecode/pinkNoise.py Outdated
@ilkilic

ilkilic commented Jul 2, 2026

Copy link
Copy Markdown
Collaborator Author

I have updated the docstring for both protocols.

Comment thread bluepyefe/nwbreader.py
Comment thread bluepyefe/ecode/capCheck.py Outdated
Comment thread bluepyefe/ecode/pinkNoise.py Outdated
Comment thread bluepyefe/ecode/capCheck.py Outdated
Comment thread bluepyefe/ecode/capCheck.py Outdated
Comment thread bluepyefe/nwbreader.py
Comment thread bluepyefe/ecode/sineSpec.py

@darshanmandge darshanmandge left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Some minor changes.

Comment thread bluepyefe/ecode/capCheck.py Outdated
Comment thread bluepyefe/nwbreader.py
Comment thread bluepyefe/nwbreader.py Outdated
Comment thread bluepyefe/ecode/sineSpec.py
Comment thread bluepyefe/nwbreader.py
"steps_DA_0": "Step",
}

VU_STIMULI_REQUIRING_INITIAL_SAMPLE_REPLACEMENT = {

@darshanmandge darshanmandge Jul 3, 2026

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this set correct? I think it may not be needed as there are only three protocols in the list which be mentioned in the for loop below.

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Also are you sure this is applicable to all the VU data with these 3 protocols? I may have used it for a subset of files.

@ilkilic ilkilic Jul 3, 2026

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't know. I didn't change your initial logic.

@ilkilic
ilkilic merged commit 972e274 into master Jul 3, 2026
3 checks passed
@darshanmandge
darshanmandge deleted the feature/vu-protocol-ecode-mapping branch August 21, 2026 16:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants